<?xml version="1.0" encoding="UTF-8"?>
<GenerateModel xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="generateMetaModel_Module.xsd">
    <PythonExport
        Name="BRepOffsetAPI_MakePipeShellPy"
        Namespace="Part"
        Twin="BRepOffsetAPI_MakePipeShell"
        TwinPointer="BRepOffsetAPI_MakePipeShell"
        PythonName="Part.BRepOffsetAPI_MakePipeShell"
        FatherInclude="Base/PyObjectBase.h"
        Include="BRepOffsetAPI_MakePipeShell.hxx"
        Father="PyObjectBase"
        FatherNamespace="Base"
        Constructor="true"
        Delete="true">
        <Documentation>
            <Author Licence="LGPL" Name="Werner Mayer" EMail="wmayer[at]users.sourceforge.net"/>
            <UserDocu>Describes a portion of a circle</UserDocu>
        </Documentation>
        <Methode Name="setFrenetMode">
            <Documentation>
                <UserDocu>setFrenetMode(True|False)
                    Sets a Frenet or a CorrectedFrenet trihedron to perform the sweeping.
                    True  = Frenet
                    False = CorrectedFrenet</UserDocu>
            </Documentation>
        </Methode>
        <Methode Name="setTrihedronMode">
            <Documentation>
                <UserDocu>setTrihedronMode(point,direction)
                    Sets a fixed trihedron to perform the sweeping.
                    All sections will be parallel.</UserDocu>
            </Documentation>
        </Methode>
        <Methode Name="setBiNormalMode">
            <Documentation>
                <UserDocu>setBiNormalMode(direction)
                    Sets a fixed BiNormal direction to perform the sweeping.
                    Angular relations between the section(s) and the BiNormal direction will be constant.</UserDocu>
            </Documentation>
        </Methode>
        <Methode Name="setSpineSupport">
            <Documentation>
                <UserDocu>setSpineSupport(shape)
                    Sets support to the spine to define the BiNormal of the trihedron, like the normal to the surfaces.
                    Warning: To be effective, Each edge of the spine must have an representation on one face of SpineSupport.</UserDocu>
            </Documentation>
        </Methode>
        <Methode Name="setAuxiliarySpine">
            <Documentation>
                <UserDocu>setAuxiliarySpine(wire, CurvilinearEquivalence, TypeOfContact)
                    Sets an auxiliary spine to define the Normal.

                    CurvilinearEquivalence = bool
                    For each Point of the Spine P, an Point Q is evalued on AuxiliarySpine.
                    If CurvilinearEquivalence=True Q split AuxiliarySpine with the same length ratio than P split Spine.

                    * OCC &gt;= 6.7
                    TypeOfContact = long
                    0: No contact
                    1: Contact
                    2: Contact On Border (The auxiliary spine becomes a boundary of the swept surface)</UserDocu>
            </Documentation>
        </Methode>
        <Methode Name="add" Keyword="true">
            <Documentation>
                <UserDocu>add(shape Profile, bool WithContact=False, bool WithCorrection=False)
                    add(shape Profile, vertex Location, bool WithContact=False, bool WithCorrection=False)
                    Adds the section Profile to this framework.
                    First and last sections may be punctual, so the shape Profile may be both wire and vertex.
                    If WithContact is true, the section is translated to be in contact with the spine.
                    If WithCorrection is true, the section is rotated to be orthogonal to the spine tangent in the correspondent point.</UserDocu>
            </Documentation>
        </Methode>
        <Methode Name="remove">
            <Documentation>
                <UserDocu>remove(shape Profile)
                    Removes the section Profile from this framework.</UserDocu>
            </Documentation>
        </Methode>
        <Methode Name="isReady">
            <Documentation>
                <UserDocu>isReady()
                    Returns true if this tool object is ready to build the shape.</UserDocu>
            </Documentation>
        </Methode>
        <Methode Name="getStatus">
            <Documentation>
                <UserDocu>getStatus()
                    Get a status, when Simulate or Build failed.</UserDocu>
            </Documentation>
        </Methode>
        <Methode Name="makeSolid">
            <Documentation>
                <UserDocu>makeSolid()
                    Transforms the sweeping Shell in Solid. If a propfile is not closed returns False.</UserDocu>
            </Documentation>
        </Methode>
        <Methode Name="setTolerance">
            <Documentation>
                <UserDocu>setTolerance( tol3d, boundTol, tolAngular)
                    Tol3d = 3D tolerance
                    BoundTol = boundary tolerance
                    TolAngular = angular tolerance</UserDocu>
            </Documentation>
        </Methode>
        <Methode Name="setTransitionMode">
            <Documentation>
                <UserDocu>0: BRepBuilderAPI_Transformed
                    1: BRepBuilderAPI_RightCorner
                    2: BRepBuilderAPI_RoundCorner</UserDocu>
            </Documentation>
        </Methode>
        <Methode Name="firstShape">
            <Documentation>
                <UserDocu>firstShape()
                    Returns the Shape of the bottom of the sweep.</UserDocu>
            </Documentation>
        </Methode>
        <Methode Name="lastShape">
            <Documentation>
                <UserDocu>lastShape()
                    Returns the Shape of the top of the sweep.</UserDocu>
            </Documentation>
        </Methode>
        <Methode Name="build">
            <Documentation>
                <UserDocu>build()
                    Builds the resulting shape.</UserDocu>
            </Documentation>
        </Methode>
        <Methode Name="shape">
            <Documentation>
                <UserDocu>shape()
                    Returns the resulting shape.</UserDocu>
            </Documentation>
        </Methode>
        <Methode Name="generated">
            <Documentation>
                <UserDocu>generated(shape S)
                    Returns a list of new shapes generated from the shape S by the shell-generating algorithm.</UserDocu>
            </Documentation>
        </Methode>
        <Methode Name="setMaxDegree">
            <Documentation>
                <UserDocu>setMaxDegree(int degree)
                    Define the maximum V degree of resulting surface.</UserDocu>
            </Documentation>
        </Methode>
        <Methode Name="setMaxSegments">
            <Documentation>
                <UserDocu>setMaxSegments(int num)
                    Define the maximum number of spans in V-direction on resulting surface.</UserDocu>
            </Documentation>
        </Methode>
        <Methode Name="setForceApproxC1">
            <Documentation>
                <UserDocu>setForceApproxC1(bool)
                    Set the flag that indicates attempt to approximate a C1-continuous surface if a swept surface proved to be C0.</UserDocu>
            </Documentation>
        </Methode>
        <Methode Name="simulate">
            <Documentation>
                <UserDocu>simulate(int nbsec)
                    Simulates the resulting shape by calculating the given number of cross-sections.</UserDocu>
            </Documentation>
        </Methode>
    </PythonExport>
</GenerateModel>
